package com.bupt.ilink.service;

import com.bupt.ilink.entity.Studyspace.tree.JsonEntity;
import com.bupt.ilink.entity.Studyspace.tree.JsonTagEntity;
import com.bupt.ilink.entity.Studyspace.tree.TagEntity;
import com.bupt.ilink.request.Study.UpdateJsonStatusRequest;

import java.util.List;

public interface StudyTreeJsonService {
    List<String> getAllTags();
    List<TagEntity> getCommonTags();
    List<JsonEntity> getJsonsByTagsAndPagination(List<String> tags, String keyword, int page, int size);
    JsonEntity getJsonById(Long id);
    void saveJsonEntity(JsonEntity jsonEntity);
    TagEntity getOrCreateTag(String tagName);
    void saveJsonTagEntity(JsonTagEntity jsonTagEntity);
    void storeJsonCopiesForUser(String userId);
    void updateJsonStatus(UpdateJsonStatusRequest updateJsonStatusRequest);

}
